Communication control method and apparatus

ABSTRACT

A plurality of terminals are connected to a common data bus. Each terminal is capable of issuing and processing two types of commands: a simultaneous command and a non-simultaneous command. A receiving terminal processes every simultaneous command, but processes only the most recently received non-simultaneous command. The receiving terminal acknowledges the receipt of every received simultaneous command and of every executed non-simultaneous command. The receiving terminal sends a reject signal for every received non-simultaneous signal that was not executed.

BACKGROUND OF THE INVENTION

The present invention relates to a communication control method andapparatus for reducing the number of messages exchanged among dataprocessing terminals, such as VTRs, computers, or video displays, forexample.

When a plurality of terminals, such as VTRs, are connected to a commondata bus, the VTRs exchange commands among each other. In such anetwork, when a command packet of command data is received by aterminal, the receiving terminal provides a response packet to thetransmitting terminal; this response packet informs the transmittingterminal that the receiving terminal has received the command. Theterminals in the network generate two types of commands: commands thatcan be performed simultaneously at any one particular terminal andcommands that cannot be performed simultaneously at any one particularterminal. The first type of command is referred to as a simultaneouscommand, and the second type of command is referred to as anon-simultaneous command. A simultaneous command can be performed alone,or simultaneously with any other command to be performed at thatterminal, including a non-simultaneous command. A non-simultaneouscommand, however, is never performed simultaneously with anothernon-simultaneous command. A non-simultaneous command is performed at theterminal either alone or simultaneously with a simultaneous command.Examples of simultaneous commands are a counter reset command and aninput switching command. Examples of non-simultaneous commands are areproduction command, a recording command, a fast forward command, and arewind command.

FIG. 12 shows the implementation of the command communication techniquedescribed above. In this case, terminal (A) transmits to terminal (B) aplurality of non-simultaneous commands. Assuming that non-simultaneouscommand 1 is received first by terminal (B), terminal (B) beginsexecuting non-simultaneous command 1. Terminal (B) also transmits toterminal (A) a busy signal 1, which indicates that terminal (B) iscurrently processing a command transmitted by terminal (A). If terminal(B) receives a second non-simultaneous command while it is processingnon-simultaneous command 1, terminal (B) stops processingnon-simultaneous command 1 and issues a reject signal 1, which indicatesthat terminal (B) has ceased processing non-simultaneous command 1.After transmitting reject signal 1, terminal (B) processesnon-simultaneous command 2, and transmits busy signal 2. After terminal(B) has processed non-simultaneous command 2, terminal (B) transmits acomplete signal 2 to terminal (A). Reference numeral "2" is used,instead of "1" because this complete signal corresponds to thecompletion of the second non-simultaneous command received at terminal(B). In this example, six packet signals were generated in order toexecute one command.

In the case of FIG. 13, terminal (A) transmits to terminal (B) anon-simultaneous command 1 and a simultaneous command 2. After receivingnon-simultaneous command 1 from terminal (A), terminal (B) transmits toterminal (A) a busy signal 1. After receiving simultaneous command 2during the processing of non-simultaneous command 1, terminal (B)generates busy signal 2. In this situation, the non-simultaneous command1 and simultaneous command 2 are performed concurrently. Ifnon-simultaneous command 3 is then transmitted to terminal (B), terminal(B) halts the processing of non-simultaneous command 1 and issues areject signal 1 to terminal (A). Terminal (B) then processesnon-simultaneous command 3 and issues a busy signal 3 to terminal (A).After terminal (B) completes simultaneous command 2 and non-simultaneouscommand 3, it issues a complete signal 2 and a complete signal 3 toterminal (A). In such a case, nine packets are transmitted and received.

Thus, in the previously proposed system mentioned above, the receptionof one command always causes the receiving terminal to issue a responsethereto. Consequently, this method of communication results in anincreased volume of data on the network.

OBJECTS OF THE INVENTION

It is, therefore, an object of the present invention to provide anetwork communication control technique that reduces the amount of dataexchanged between a command transmitting terminal and a commandreceiving terminal.

Various other objects, advantages and features of the present inventionwill become readily apparent from the ensuing detailed description, andthe novel features will be particularly pointed out in the appendedclaims.

SUMMARY OF THE INVENTION

In accordance with this invention, there is provided a communicationcontrol technique in which a plurality of terminals are connected to acommon data bus. These terminals transmit and receive commands formed aspackets, and these commands are categorized either as simultaneouscommands or non-simultaneous commands. Every terminal includes a commandselection communication control section which causes a receivingterminal to store the most recently received non-simultaneous commandand to erase any previously stored non-simultaneous command.

Furthermore, a receiving terminal does not provide to the transmittingterminal an acknowledgement of receipt for every receivednon-simultaneous command. The receiving terminal provides such aresponse only with respect to non-simultaneous commands that areexecuted. With respect to a command that is not executed, a rejectsignal is issued in order to inform the transmitting terminal that thecorresponding command has not been executed. Consequently, the number ofpackets which are transmitted and received over the network is reduced.

A command execution processing section of the receiving terminalexecutes the stored non-simultaneous command in the next predeterminedperiod. With respect to received simultaneous commands, a receivingterminal executes such commands either in the same predetermined periodin which they are received or in the next predetermined period, and suchcommands are executed simultaneously with any other commands that arecurrently being executed in the receiving terminal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a network comprising a bus and a plurality ofterminals.

FIG. 2 schematically illustrates command communication in which twosimultaneous commands are received in the same predetermined period.

FIG. 3 schematically illustrates command communication in which twonon-simultaneous commands are received in the same predetermined period.

FIG. 4 schematically illustrates command communication in which twonon-simultaneous commands and a simultaneous command are received withina predetermined period.

FIG. 5 illustrates the command selection communication control sectionand the command execution processing section of a terminal of thepresent invention.

FIG. 6 schematically illustrates command communication in which theexecution of a non-simultaneous command is interrupted by the arrival ofa subsequent non-simultaneous command.

FIG. 7 schematically illustrates command communication in which twosimultaneous commands are received in the same predetermined period.

FIG. 8 schematically illustrates command communication in which twonon-simultaneous commands are received in the same predetermined period.

FIG. 9 schematically illustrates command communication in which twonon-simultaneous commands and a simultaneous command are received withinthe same predetermined period.

FIG. 10 is a flow chart describing a method of processing a receivedcommand.

FIG. 11 is a flow chart exhibiting the timing of a command executionprocessing.

FIG. 12 schematically illustrates a previously proposed method used by aterminal for handling two non-simultaneous commands.

FIG. 13 schematically illustrates a previously proposed method used by aterminal for handling two non-simultaneous commands and a simultaneouscommand.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A communication control method according to the invention will now bedescribed hereinbelow with reference to the drawings. FIG. 1 illustratesa network to which is applied the communication control method of thepresent invention. The network comprises terminal 1, terminal 2, anddata bus 10. Other terminals may be added to bus 10 since FIG. 1 merelyillustrates an example of the preferred embodiment. These terminals mayindividually comprise various audio-video devices, such as VTRs,computers, or video displays. Terminal 1 includes a command selectioncommunication control section 3 and a command execution processingsection 4. Similarly, terminal 2 also includes a command selectioncommunication control section 5 and a command execution processingsection 6. The command selection communication control section 5 ofterminal 2 accepts any commands transmitted by terminal 1 over bus 10.In accordance with a method to be described later, the command selectioncommunication control section 5 selects the command to be executed fromamong the commands received within a predetermined timing period. Thepredetermined timing period may be arbitrarily set to a particularduration; in this embodiment, the predetermined timing period is 17 ms.The command selection communication control section 5 supplies theselected command to the command execution processing section 6 forexecution.

The following discussion describes the method by which terminal 2executes a command transmitted by terminal 1. When a simultaneouscommand arrives at terminal 2, terminal 2 sends an acknowledgementsignal, busy 1, back to terminal 1 and executes the received commandwithin the same predetermined timing period in which the command wasreceived. Unlike a simultaneous command, a non-simultaneous commandtransmitted by terminal 1 is first stored in the buffer of terminal 2within a predetermined period. If the buffer already stores a previouslyreceived non-simultaneous command, the newly received non-simultaneouscommand is written over the previously stored non-simultaneous command.Furthermore, terminal 2 returns to terminal 1 a reject signalcorresponding to the erased non-simultaneous command. During the nextpredetermined timing period, terminal 2 executes the most recentlystored non-simultaneous command and simultaneously transmits to terminal1 a busy signal acknowledging receipt of the executed command. Terminal2 sends to terminal 1 a complete signal when the command execution isfinished. Although this embodiment confers the highest priority to themost recently received non-simultaneous command, the present inventionalso provides for terminals that give the highest priority to theearliest received non-simultaneous command. In such a case, thereceiving terminals would not store a new non-simultaneous command untilthe presently stored command had been fully executed. Furthermore, thepresent invention also provides terminals that execute all receivednon-simultaneous commands according to a predetermined order.

FIG. 2 shows the operation where two simultaneous commands are receivedby terminal 2 within a predetermined period. In period 1, terminal 2receives simultaneous command 1, transmits busy signal 1, and beginsexecuting the simultaneous command 1. Terminal 2 also receivessimultaneous command 2 during period 1 and, as in the case ofsimultaneous command 1, terminal 2 transmits busy signal 2 and beginsexecuting simultaneous command 2. Thus, the respective periods ofexecution of these commands may overlap one another to some extent, asindicated. Furthermore, the respective periods of execution of thesecommands are independent of the predetermined period of the commandselection communication control section of each terminal. During period2, terminal 2 transmits complete signal 1 after the execution ofsimultaneous command 1 is completed. During period 3, terminal 2transmits complete signal 2 after the execution of simultaneous command2 is completed.

FIG. 3 shows the operation where two non-simultaneous commands arereceived by terminal 2 within a predetermined period. In this example,terminal 2 receives, within a predetermined period of 17 ms,non-simultaneous command 1 first and then non-simultaneous command 2.This particular embodiment confers the highest priority to the mostrecently received non-simultaneous command and, therefore, terminal 2stores in the buffer non-simultaneous command 2. Upon the receipt ofnon-simultaneous command 2, terminal 2 also transmits reject signal 1,which indicates to terminal 1 that terminal 2 will not executenon-simultaneous command 1. During the next predetermined period,terminal 2 begins executing non-simultaneous command 2 and transmitsbusy signal 2 to terminal 1. During the third predetermined period,terminal 2 issues a complete signal 2 after the execution ofnon-simultaneous command 2 has been completed. This signal indicates toterminal 1 that non-simultaneous command 2 has been executed. Unlike thepreviously proposed method shown in FIG. 12, the method shown in FIG. 3does not transmit the busy signal 1 because a busy signal in this methodis transmitted only with respect to non-simultaneous commands that areexpected to be completely executed. In the example of FIG. 3,non-simultaneous command 1 was displaced by non-simultaneous command 2received during the same predetermined period, which was executed byterminal 2. Therefore, terminal 2 need not transmit the busy signalcorresponding to non-simultaneous command 1 because this command wasnever executed. Consequently, the method of FIG. 3 uses one less packetthan the previously proposed method of FIG. 12.

FIG. 4 shows the operation where terminal 2 receives non-simultaneouscommand 1 within one predetermined period. If only one non-simultaneouscommand is received by terminal 2 within a predetermined period, thenterminal 2 executes non-simultaneous command 1. On the other hand, ifnon-simultaneous command 3 also is received within this predeterminedperiod, then only non-simultaneous command 3 is executed and rejectsignal 1 is issued with respect to the displaced non-simultaneoussignal 1. Also, busy signal 3 is issued when terminal 2 begins executingnon-simultaneous command 3 during the next predetermined period. Asimultaneous command 2 that is received subsequent to non-simultaneouscommand 1 is executed independently of any other commands. When terminal2 receives simultaneous command 2, terminal 2 returns busy signal 2 toterminal 1 and begins executing simultaneous command 2. During period 2,complete signal 2 is issued after the execution of simultaneous command2 is completed, and during period 3, complete signal 3 issues after theexecution of non-simultaneous command 3 is completed. This methodreduces the amount of data placed on bus 10 because this method, unlikethe previously proposed method shown in FIG. 13, does not requireterminal 2 to transmit busy signal 1 since non-simultaneous command 1was displaced by non-simultaneous command 3.

FIG. 5 illustrates a command selection communication controlmicrocomputer 13 and the command execution processing microcomputer 14of terminal 12, which may comprise a VTR. A command is transmitted froma terminal 11 to VTR 12 and a response is transmitted from the VTR 12 tothe terminal 11. The communication between the command selectioncommunication control microcomputer 13 and the command executionprocessing microcomputer 14 is performed during a predetermined timingperiod (about 17 msec) in the VTR. When the command selectioncommunication control microcomputer 13 and command execution processingmicrocomputer 14 do not communicate, as in the case when a plurality ofnon-simultaneous commands reaches the VTR 12, the command to be actuallyexecuted is selected by the command selection communication controlmicrocomputer 13 to be the most recently received non-simultaneouscommand. This selected command is then supplied at a subsequentcommunication timing to command execution processing microcomputer 14.In the case of a received simultaneous command, it too is supplied tothe command execution processing microcomputer for execution.

FIG. 6 illustrates how the execution of one non-simultaneous command isinterrupted upon the reception of a subsequent non-simultaneous command.The command selection communication control microcomputer 13 and commandexecution processing microcomputer 14 perform the transmission andreception of the commands and the responses during the predeterminedtiming period of the command execution processing microcomputer 14. Whena non-simultaneous command 1 is received at VTR 12, it is stored in abuffer. Only one non-simultaneous command can be stored in the buffer atany one time. At the end of the timing period of the command executionprocessing microcomputer 14, non-simultaneous command 1 is sent to thecommand execution processing microcomputer 14 and a busy signalcorresponding to this command is sent to terminal 11. Ifnon-simultaneous command 2 arrives during the timing period whennon-simultaneous command 1 is being executed, the command executionprocessing microcomputer 14 interrupts the execution of non-simultaneouscommand 1 and issues a reject signal 1 corresponding to this command.After issuing reject signal 1, the microcomputer 14 executes thenon-simultaneous command 2 and issues a busy signal 2. Once this command2 has been executed, the microcomputer 14 issues a complete signal 2 atthe next communication timing period.

FIG. 7 shows the operation where two simultaneous commands arrive atterminal 1 within a single predetermined period. In this example,simultaneous command 1 is received before simultaneous command 2. In thesecond period, the execution of simultaneous command 1 begins, and abusy signal 1 is issued. The execution of this command ends in the thirdperiod, during which a complete signal 1 is issued when the execution ofsimultaneous command 1 is concluded. The execution of simultaneouscommand 2 begins in period 3 and ends in period 4. During period 3, busysignal 2 issues, and during period 4, complete signal 2 issues once theexecution of simultaneous command 2 is completed. Unlikenon-simultaneous commands, the simultaneous commands of FIG. 7 areexecuted independently of the communication period of the commandselection communication control.

In FIG. 8, a non-simultaneous command 1 is received beforenon-simultaneous command 2 but both are received in the same period. Asmentioned before, the receiving terminal of the present invention storesand executes only the most recently received non-simultaneous command.Therefore, in FIG. 8, once non-simultaneous command 2 is received,previously stored non-simultaneous command 1 is deleted from the bufferand a reject signal 1 corresponding to this deleted command is issued.During the next period, the execution of non-simultaneous command 2begins and busy signal 2 is issued with respect thereto. When theexecution of non-simultaneous command 2 is finished during the thirdperiod, complete signal 2 is issued. Since non-simultaneous command 1was never executed, no busy signal is issued with respect thereto.Therefore, this method uses one less packet then the previously proposedmethod discussed in conjunction with FIGS. 12 and 13.

In FIG. 9, a non-simultaneous command 1 is received before simultaneouscommand 2 within a predetermined period. After being received byterminal 2, non-simultaneous command 1 is stored in the buffer. However,if non-simultaneous command 3 is received after simultaneous command 2but before execution of non-simultaneous command 1 begins, thennon-simultaneous command 1 is displaced from terminal 2, which issuesreject signal 1 in response thereto. During the second period, terminal2 begins to execute simultaneous command 2 and issues busy signal 2 withrespect thereto. When the execution of simultaneous command 2 iscompleted during the third period, terminal 2 issues complete signal 2within the same period. As for non-simultaneous command 3, terminal 2begins executing this command during the third period and finishes thisexecution during the fourth period, during which a complete signal 3 isissued.

FIG. 10 is a flowchart that describes how a terminal processes areceived command. When a terminal receives a command (step 21), itdetermines if the command is a simultaneous command or anon-simultaneous command (step 22). If the received command is asimultaneous command, then the terminal executes this command during thenext timing period (step 23). If the received command is anon-simultaneous command, then the terminal determines in step 24whether the buffer already stores a previously received non-simultaneouscommand. If yes, then the later-received command is stored in place ofthe earlier command, and the terminal issues a reject signal withrespect to the displaced command (step 25). If the buffer does not storeany command, then the current non-simultaneous command is stored (step26).

FIG. 11 is a flowchart exhibiting the timing of the command executionprocessing. In step 31, the timing of a command process executionbegins. In step 32, the terminal determines whether any command isstored in the buffer. If yes, then the terminal executes the storedcommand and issues a busy signal with respect thereto. If the bufferdoes not contain any signal, then the terminal returns to the mainroutine (step 32).

The above embodiments have been described with the assumption that theterminals include respective VTRs. If a video display is included ineach terminal, however, only one particular channel control and only oneparticular volume control operation may be selected at any one time. Byproviding a buffer for the channel command and a buffer for the volumecommand, therefore, the video display can operate in a manner similar tothat of the VTR in the above embodiments. For instance, when a commandto increase the channel is received in the same period as a command todecrease the channel, it is self-evident that these two inconsistentcommands cannot be executed simultaneously. In this instance, thesecommands are arranged in accordance with a predetermined priority. Forexample, the terminal may be programmed to execute the most recent orleast recent command. This priority of commands may also be used withrespect to a command to increase the volume and a command to reduce thevolume. In addition to the video display, the invention also isapplicable generally to an apparatus having an operating state (achannel, a volume, or the like) that is uniquely decided.

While the present invention particularly shown and described withreference to preferred embodiments, it will be readily appreciated bythose of ordinary skill in the art that various changes andmodifications may be made without departing from the spirit and scope ofthe invention.

It is intended that the appended claims be interpreted as covering thespecific embodiments described herein, those modifications andalternatives which have been mentioned above, and all equivalentsthereto.

We claim:
 1. A terminal apparatus comprising:means for receiving atleast one simultaneous command and at least one non-simultaneous commandduring a common timing period; means for selecting one of said receivednon-simultaneous commands; means for storing said selectednon-simultaneous command; and means for executing said selectednon-simultaneous command and said at least one simultaneous command. 2.A terminal apparatus according to claim 1 wherein pluralnon-simultaneous commands are received during said common timing period;and wherein said selecting means selects the most recently received ofsaid plural non-simultaneous commands.
 3. A terminal apparatus accordingto claim 2 wherein said means for executing includes busy signaltransmit means for transmitting a busy signal corresponding to theselected most recently received non-simultaneous command only.
 4. Aterminal apparatus according to claim 3 wherein said means for executingis operative to execute said most recently received non-simultaneouscommand during a next-following timing period; and said busy signaltransmit means is operable to transmit said busy signal during said nextfollowing timing period.
 5. A terminal apparatus according to claim 4wherein said means for executing further includes reject signal transmitmeans for transmitting a reject signal corresponding to thosenon-simultaneous commands that are not selected and which were receivedprior to said selected non-simultaneous command.
 6. A terminal apparatusaccording to claim 5 wherein said reject signal transmit means isoperative to transmit said reject signal during said common timingperiod.
 7. A terminal apparatus according to claim 6 wherein said meansfor executing additionally includes complete signal transmit means fortransmitting a first complete signal when execution of a simultaneouscommand is completed and for transmitting a second complete signal whenexecution of said selected non-simultaneous command is completed.
 8. Amethod of controlling communication with a terminal comprising:receivingat least one simultaneous command and at least one non-simultaneouscommand during a common timing period; selecting one of said receivednon-simultaneous commands; storing said selected non-simultaneouscommand; and executing said selected non-simultaneous command and saidat least one simultaneous command.
 9. The method of claim 8 whereinplural non-simultaneous commands are received during said common timingperiod; and wherein the step of selecting selects the most recentlyreceived of said plural non-simultaneous commands.
 10. The method ofclaim 9 wherein the step of executing includes transmitting a busysignal corresponding to the selected most recently receivednon-simultaneous command only.
 11. The method of claim 10 wherein thestep of executing executes said most recently received non-simultaneouscommand during a next-following timing period; and said busy signal istransmitted during said next following timing period.
 12. The method ofclaim 11 wherein the step of executing further includes transmitting areject signal corresponding to those non-simultaneous commands that arenot selected and which were received prior to said selectednon-simultaneous command.
 13. The method of claim 12 wherein said rejectsignal is transmitted during said common timing period.
 14. The methodof claim 13 wherein the step of executing additionally includestransmitting a first complete signal when execution of a simultaneouscommand is completed and transmitting a second complete signal whenexecution of said selected non-simultaneous command is completed.